﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SIMCObjetoNegocio;

namespace SIMCRepositorio
{
    public interface IRepositorioDocumento
    {
        List<DocumentoPersona> BuscarLista(int p_IdPersona);
    }

    public class RepositorioDocumento : Database, IRepositorioDocumento
    {
        public List<DocumentoPersona> BuscarLista(int p_IdPersona)
        {
            try
            {
                var query = from documento in Context.per_documentos
                            join valor in Context.cla_valores
                                on documento.doc_stp_doc equals valor.cav_scodigo
                            join persona in Context.per_personas
                                on documento.doc_ipersona equals persona.per_icodigo
                            where documento.doc_ipersona == p_IdPersona
                                    && valor.cav_satributo == Valores.TipoDocumento
                            select new DocumentoPersona
                            {
                                ID = documento.doc_inumero,
                                IdPersona = documento.doc_ipersona,
                                TipoDocumento = documento.doc_stp_doc,
                                TipoDocumentoDescripcion = valor.cav_sdescripcion,
                                SubTipo = documento.doc_ssub_tipo,
                                FechaDocumento = documento.doc_fdocum,
                                FechaCapturaImagen = documento.doc_fcaptura,
                                Notas = documento.doc_snotas,
                                FileName = documento.doc_sfilename
                            };

                return query.ToList();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }
}
